package org.wenhuayuan.library.log;

public abstract class HiLogConfig {
    // 设置每一行显示最大字符长度
    static int MAX_LEN = 512;
    static HiStackTraceFormatter HI_STACK_TRANCE_FORMATTER = new HiStackTraceFormatter();// 懒汉单例
    static HiThreadFormatter HI_THREAD_FORMATTER = new HiThreadFormatter();// 懒汉单例
    public String getGlobalTag () {
        return "GlobalTag";
    }

    public JsonParser injectJsonParser() {
        return null;
    }
    /** 是否包含线程信息 */
    public boolean includeThread() {
        return false;
    }
    /** 获取堆栈信息的深度 */
    public int stackTraceDepth() {
        return 5;
    }

    public HiLogPrinter[] printers() {
        return null;
    }
    /** 是否开启打印日志 */
    public boolean enable () {
        return true;
    }

    /** 对象序列化，将序列化方式交给用户操作
     *  为解耦，令本程序不直接依赖gson、fastjson等序列化程序 */
    public interface JsonParser {
        String toJson(Object src);
    }
}
